package com.cdu.service;

import com.cdu.pojo.entity.Address;
import com.cdu.pojo.vo.UserInfoVO;
import com.cdu.pojo.vo.UserLoginVO;
import com.cdu.pojo.dto.TokenUser;
import com.cdu.pojo.dto.UserLoginDTO;
import com.cdu.pojo.dto.UserRegDTO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface UserService {
    void reg(UserRegDTO userRegDTO);

    UserLoginVO login(UserLoginDTO userLoginDTO);

    UserInfoVO getUserInfo(TokenUser tokenUser);

    /**
     * 用户上传头像
     * @param file 文件
     * @param tokenUser 用户的token解析数据
     * @return
     */
    String upload(MultipartFile file, TokenUser tokenUser);

    void updatePwd(TokenUser tokenUser, String oldPassword, String newPassword);

    void updateUserInfo(TokenUser tokenUser, UserInfoVO userInfoVO);

    List<Address> getUserAddress(TokenUser tokenUser);
}
